import { getDvaApp } from 'umi';
import _ from 'lodash';
import moment from 'moment';
import { message } from 'antd';
import { uuid } from './strUtil';

// 获取store
export function getStore() {
  return getDvaApp()._store;
}

// 获取dva数据
export function getState() {
  return getDvaApp()._store.getState();
}

// 国际化前缀函数
export function createAddPrefixFunc(prefix) {
  var func = key => prefix + key;
  return func;
}

/**
 * 跨应用路由跳转
 * @param {String} href url地址
 * @param {Object} stateObj 状态参数 可以通过history.state读取
 * @param {String} title 标题 暂时没有用
 */
export function routerGo(href = '/', title = null, stateObj = {}) {
  window.history.pushState(stateObj, title, href);
}

// 上传文件检验
export function uploadVerify({ types, file, size }) {
  // if (types.indexOf(file.type) == -1)
  //   return { errType: 'formatErr', results: false };
  const isLt2M = file.size / 1024 / 1024 < size;
  if (!isLt2M) return { errType: 'sizeErr', results: false };
  return { errType: null, results: true };
}

// moment 转换 时间戳
export function momentToGitTime(momentTime, str) {
  var format = 'YYYY/MM/DD HH:mm:ss';
  if (str) format = str;
  return new Date(moment(momentTime).format(format)).getTime();
}